package org.saxion.aktiehuis.DAO.interfaces;

import java.util.List;

import org.saxion.aktiehuis.model.Bestelling;


public interface BestellingDAO {
	/**
	 * Het toevoegen van een nieuwe bestelling a.d.h.v een klantId
	 * @param klantId
	 * @return De aangemaakte Bestelling
	 * @throws Exception
	 */
	public int nieuweBestelling(int klantId) throws Exception;
	/**
	 * Het toevoegen en van een product aan een bestelling
	 * @param bestellingID Id van de bestelling
	 * @param productId Id van het product
	 * @param Aantal Het aantal te bestellen
	 * @throws Exception
	 */
	public void addProduct(int bestellingID, int producId, int Aantal) throws Exception;
	/**
	 * Het ophalen van een Bestelling
	 * @param bestellingId De Id van de bestelling
	 * @return Geeft een bestelling terug
	 * @throws Exception
	 */
	public Bestelling getBestelling(int bestellingId) throws Exception;
	/**
	 * Geeft een lijst van alle Bestelling van een klant weer
	 * @param klantId De klant Id
	 * @return Een List<Bestelling>
	 * @throws Exception
	 */
	public List<Bestelling> getBestellingKlant(int klantId) throws Exception;
	/**
	 * Het bevestigen van een bestelling
	 * @param bestellingId Id van de bestelling
	 * @throws Exception
	 */
	public void bevestigBestelling(int bestellingId) throws Exception;
	
}
